package tech.aistar.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import tech.aistar.pojo.Result;
import tech.aistar.pojo.User;

/**
 * 本来用来演示: get请求的参数的传递和接受
 *
 * @author success
 * @date 2025/3/3 10:36:20
 */
@Controller
@ResponseBody
@RequestMapping("get")
public class ParamGetController {

    /**
     * localhost:8088/dev/get/test01?username=admin&age=18
     * 摆地摊形式: 方法的参数的名称需要和url中的key高度保持一致.
     * 并且需要考虑类型.
     * @param username
     * @param age
     * @return
     */
    @GetMapping("test01")
    public Result test01(String username,Integer age){
        System.out.println("username:"+username+",age:"+age);
        return new Result("200","key-value形式",username+":"+age);
    }

    /**
     * 使用对象作为参数来接受前端传过来的参数的时候
     * 需要保证对象的属性名和url中的key的名称高度保持一致即可
     * @param user
     * @return
     */
    @GetMapping("test02")
    public Result test02(User user){
        System.out.println(user);
        return new Result("200","使用对象来接受",user);
    }
}
